import Vue from 'vue';
import ElementUI from 'element-ui';
import axios from "axios";

//以下内容是全局的配置（在vendor里配置，就能有全局配置的效果，因为vendor是公共库）：
//axios回复拦截器
axios.interceptors.response.use(
  function(response){
      //收到信息后的拦截器：直接返回data区的数据,data区的数据会自动json化
      let data = response.data;
      if( data.code !== 0 ){ throw new Error(data.msg);}
      return response.data;
  },
  function( error ){//发生错误或抛出异常的时候执行的方法
      console.error(error);
      return Promise.reject(error);
  }
);

//将axios封装到原型链中，这样就可以在vue中直接使用this.$http来调用，这样方法内的this就是vue实例
//同时这样可以实现进一步封装ajax方法的效果，如果以后需要更换不同的ajax的库，也可以轻松迁移
Vue.prototype.$http = axios;